/*
 *接口编写处...
*如果接口需要做Action的权限验证，请在Action上使用属性
*如: [ApiActionPermission("base_process",Enums.ActionPermissionOptions.Search)]
 */
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using VOL.Entity.DomainModels;
using MES.BasicData.IServices;
using Microsoft.AspNetCore.Authorization;
using VOL.Core.DBManager;
using VOL.Entity.DomainModels.Print;
using MES.BasicData.Services;

namespace MES.BasicData.Controllers
{
    public partial class base_processController
    {
        private readonly Ibase_processService _service;//访问业务代码
        private readonly IHttpContextAccessor _httpContextAccessor;

        [ActivatorUtilitiesConstructor]
        public base_processController(
            Ibase_processService service,
            IHttpContextAccessor httpContextAccessor
        )
        : base(service)
        {
            _service = service;
            _httpContextAccessor = httpContextAccessor;
        }

        /// <summary>
        /// APP统计报表工序计划数
        /// </summary>
        /// <returns></returns>
        [Route("getAppHomeProcessTop5"), HttpGet]
        [AllowAnonymous]
        public JsonResult GetAppHomeProcessTop5()
        {
            string woSql = @" SELECT  ProcessName name, SUM(PlanQty) data
                                         FROM production_workorderlist  GROUP BY ProcessName ";
            List<BoardEntity> list = DBServerProvider.SqlDapper.QueryList<BoardEntity>(woSql, new { });
            return JsonNormal(list);
        }

        //后台App_ProductController中添加代码，返回table数据
        [HttpPost, Route("getSelectorProcess")]
        public IActionResult GetSelectorProcess([FromBody] PageDataOptions options)
        {
            //1.可以直接调用框架的GetPageData查询
            PageGridData<base_process> data = base_processService.Instance.GetPageData(options);
            return JsonNormal(data);
        }
    }
}
